import { AuthTypeEnum, CertificateTypeEnum, IdCardTypeEnum } from "@/enums/LoginEnum";

/** 实名认证详情 */
export type AuthDetail = PersonalRealNameAuth & EnterpriseRealNameAuth & OrganizationRealNameAuth
/** 实名认证 */
export interface AuthBase {
    /** 主键 */
    id: number;
    /** 审核时间 */
    auditTime: string;
    /** 审核状态 */
    auditStatus: number;
    /** 审核备注 */
    auditRemark: string;
    /** 认证类型 */
    certificationType: AuthTypeEnum;
}

/** 个人实名认证 */
export interface PersonalRealNameAuth extends AuthBase {
    /** 个人身份证类型 */
    personalIdType: IdCardTypeEnum;
    /** 个人身份证正面图片 */
    personalIdFrontImage: string;
    /** 个人身份证反面图片 */
    personalIdBackImage: string;
    /** 个人姓名 */
    personalName: string;
    /** 个人身份证号码 */
    personalIdNumber: string;
    /** 个人身份证开始时间 */
    personalIdStart: string;
    /** 个人身份证结束时间 */
    personalIdEnd: string;

}

/** 企业实名认证 */
export interface EnterpriseRealNameAuth extends AuthBase {

    /** 企业营业执照图片 */
    enterpriseLicenseImage: string;
    /** 企业名称 */
    enterpriseName: string;
    /** 企业法人 */
    enterpriseLegalPerson: string;
    /** 企业注册号 */
    enterpriseRegistrationNumber: string;
    /** 企业注册地址 */
    enterpriseRegistrationAddress: string;
    /** 企业经营期限 */
    enterpriseBusinessPeriod: string;
}

/** 组织机构实名认证 */
export interface OrganizationRealNameAuth extends AuthBase {

    /** 组织机构代码类型 */
    organizationCertificateType: CertificateTypeEnum;
    /** 组织机构代码图片 */
    organizationCertificateImage: string;
    /** 组织机构名称 */
    organizationName: string;
    /** 组织机构法人 */
    organizationLegalPerson: string;
    /** 组织机构注册号 */
    organizationRegistrationNumber: string;
    /** 组织机构注册地址 */
    organizationRegistrationAddress: string;
    /** 组织机构经营期限 */
    organizationBusinessPeriod: string;

}



